import Koa from 'koa'
//import Path from 'path'
import KoaBody from 'koa-body'

const app = new Koa();


// // 静态
// import KoaStatic from 'koa-static'
// //console.log(Path.join(__dirname, "../public"));
// app.use(KoaStatic(
//     "./public" // 以 node.js 的执行目录为准，通常情况下默认为项目根目录
// ));

app.use(KoaBody({
    multipart: true
}));

//app.use(async (ctx,next) => ctx.body = 'Hello Koa2.');
app.use(ctx => {

    // app 变量
    // let cnt = ctx.app["cnt"] || 0;
    // ctx.body = `cnt: ${cnt}.`;
    // cnt++;
    // ctx.app["cnt"] = cnt;

    //ctx.response.header["Content-Type"] = "application/json";
    //ctx.type = "application/json";

    ctx.body = {
        method: ctx.request.method,
        url: ctx.request.url,
        body: ctx.request.body,
        req_url: ctx.req.url,
        //req_connection: ctx.req.connection
    };
});

app.listen(13001);

// import express from 'express'
// import http from 'http'
// import socket from 'socket.io'

// import { MessageType, EnterResult, UserInfo } from './models/socket-io-model'
// import socket_init from "./socket-init"

// const app = express();
// const http_server = http.createServer(app);
// const socket_io = socket.listen(http_server);

// app.use("/app", express.static('app_dist'));
// app.use("/pub", express.static('public'));

// app.get('/', (req, res) => res.send('Hello World!'));

// // socket 
// let socket_index = 1;
// let socket_dict: { [code: string]: number } = {};
// let socket_list: { [index: number]: UserInfo, get_index(): number } = {
//     get_index() { return socket_index++; }
// };
// Object.defineProperty(socket_list, "get_index", {
//     enumerable: false,
//     writable: false,
//     value: () => socket_index++
// });

// // socket_io.on("connect", socket => {
// //     // 先于 connection
// // });

// socket_io.on(
//     "connection",
//     socket_init(
//         socket_io,
//         socket_dict,
//         socket_list
//     )
// );

// http_server.listen(
//     13001,
//     () => console.log('http listening on port 13001!')
// );